std::literals::chrono_literals:: operator""h
|
Definido en el encabezado
<chrono>
|
||
|
constexpr
std::
chrono
::
hours
operator "" h ( unsigned long long hrs ) ; |
(1) | (desde C++14) |
|
constexpr
std::
chrono
::
duration
<
/*unspecified*/
,
std::
ratio
<
3600
,
1
>>
operator "" h ( long double hrs ) ; |
(2) | (desde C++14) |
Forma un literal std::chrono::duration que representa horas.
Contenidos |
Parámetros
| hrs | - | el número de horas |
Valor de retorno
El literal std::chrono::duration .
Implementación posible
constexpr std::chrono::hours operator""h(unsigned long long h) { return std::chrono::hours(h); } constexpr std::chrono::duration<long double, ratio<3600,1>> operator""h(long double h) { return std::chrono::duration<long double, std::ratio<3600,1>>(h); } |
Notas
Este operador se declara en el espacio de nombres std :: literals :: chrono_literals , donde tanto literals como chrono_literals son espacios de nombres en línea . Se puede acceder a este operador mediante:
- using namespace std :: literals ,
- using namespace std :: chrono_literals , o
- using namespace std :: literals :: chrono_literals .
Además, dentro del espacio de nombres std :: chrono , la directiva using namespace literals :: chrono_literals ; es proporcionada por la biblioteca estándar , de modo que si un programador utiliza using namespace std :: chrono ; para obtener acceso a las clases en la biblioteca chrono , los operadores literales correspondientes también se vuelven visibles.
Ejemplo
#include <chrono> #include <iostream> int main() { using namespace std::chrono_literals; auto day = 24h; auto halfhour = 0.5h; std::cout << "one day is " << day.count() << " hours (" << day << ")\n" << "half an hour is " << halfhour.count() << " hours (" << halfhour << ")\n"; }
Salida:
one day is 24 hours (24h) half an hour is 0.5 hours (0.5h)
Véase también
|
construye una nueva duración
(función miembro pública de
std::chrono::duration<Rep,Period>
)
|